Facilitating Program Comprehension by Mining Association Rules from Source Code
نویسندگان
چکیده
Program comprehension is an important part of software maintenance, especially when program structure is complex and documentation is unavailable or outdated. Data mining can produce structural views of source code thus facilitating legacy systems understanding. This paper presents a method for mining association rules from code aiming at capturing program structure and achieving better system understanding. A tool was implemented to assess this method. It inputs data extracted from code and derives association rules. Rules are then processed to abstract programs into groups containing interrelated entities. Entities are grouped together if their attributes participate in common rules. The abstraction is performed at the function level, in contrast to other approaches, that work at the program level. The method was evaluated using real, working programs. Programs are fed into a code analyser which produces the input needed for the mining tool. Results show that the method facilitates program comprehension by only using source code where domain knowledge and reliable documentation are not available or reliable.
منابع مشابه
An improved methodology on information distillation by mining program source code
This paper presents a methodology for knowledge acquisition from source code. We use data mining to support semiautomated software maintenance and comprehension and provide practical insights into systems specifics, assuming one has limited prior familiarity with these systems. We propose a methodology and an associated model for extracting information from object oriented code by applying clus...
متن کاملMining Source Code for Design Regularities
The aim of this working session on Industrial Realities of Program Comprehension is to exchange and discuss experiences, opportunities, challenges and strategies for the application of program comprehension techniques in industry. In this position paper we focus on a potentially interesting opportunity and challenge for adopting program comprehension techniques, and source code mining technique...
متن کاملMetarule-guided association rule mining for program understanding
Software systems are expected to change over their lifetime in order to remain useful. Understanding a software system that has undergone changes is often difficult due to unavailability of up-to-date documentation. Under these circumstances, source code is the only reliable means of information regarding the system. In this paper, we apply data mining, or more specifically, association rule mi...
متن کاملMeasurement of Complexity and Comprehension of a Program Through a Cognitive Approach
The inherent complexity of the software systems creates problems in the software engineering industry. Numerous techniques have been designed to comprehend the fundamental characteristics of software systems. To understand the software, it is necessary to know about the complexity level of the source code. Cognitive informatics perform an important role for better understanding the complexity o...
متن کاملData Mining Code Clustering (DMCC): An Approach Supporting Software Maintenance and Comprehension Technical Report
Problems in software maintenance occur when programs are modified with little understanding of the overall source code organisation and of the full impact of changes. Most software systems are structured as a number of subsystems, consisting of code that collaborates to provide the composed functionality to the program. An important aspect of program understanding is to perceive this subsystem ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003